package com.group7.mall.service;

import com.group7.mall.dto.*;
import com.group7.mall.entity.*;
import com.group7.mall.req.SellerGoodsPageRequest;
import com.group7.mall.resp.SellerGoodsPageResponse;
import com.group7.mall.resp.UserGoodsPageResponse;
import com.group7.mall.req.UserGoodsPageRequest;

import java.util.List;

public interface UserGoodsService {

    UserGoodsPageResponse<GoodsPreviewDto> queryUserBrowsingHistory(UserGoodsPageRequest userGoodsPageRequest);

    StoreDto showStore(TbSeller tbSeller);

    List<GoodsPreviewDto> showRecommendedGoods();

    UserGoodsPageResponse<GoodsPreviewDto> queryGoodsPreviewByPage(UserGoodsPageRequest pageRequest);

    GoodsPreviewDto queryGoodsPreview(Integer goodsId);

    TbGoods insert(TbGoods tbGoods);

    UserGoodsDetailsDto showGoodsDetail(Integer goodsId);

    GoodsTypeDto showGoodsAllType(Integer goodsId);

    TbGoodsInventoryPrice queryGoodsInventoryByTypeIds(UserCartAddDto userCartAddDto);

    int addClickCount(TbBrowsingHistory tbBrowsingHistory);

    List<String> searchInBox(String searchContent);

    TbGoodsInventoryPrice queryGoodsInventoryByCombinationId(UserCartAddDto userCartAddDto);


}
